Skip to content

chore: Remove gulp from app demos#33495

Open
ajivanyandev wants to merge 26 commits into
26_1from
gulp/remove-gulp-from-app-demos
Open

chore: Remove gulp from app demos#33495
ajivanyandev wants to merge 26 commits into
26_1from
gulp/remove-gulp-from-app-demos

Conversation

@ajivanyandev

Copy link
Copy Markdown
Contributor

No description provided.

@ajivanyandev ajivanyandev self-assigned this May 5, 2026
Copilot AI review requested due to automatic review settings May 5, 2026 10:16
@ajivanyandev ajivanyandev requested a review from a team as a code owner May 5, 2026 10:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes the Gulp-based workflow from apps/demos and replaces the former gulp tasks with plain Node.js scripts invoked via package.json scripts and Nx run-commands, simplifying the demos’ build/prepare pipeline and dropping the gulp dependency.

Changes:

  • Removed gulp from apps/demos dependencies and deleted the apps/demos/gulpfile.js/* tasks.
  • Added Node.js script replacements for the former gulp js, gulp shared, gulp bundles, and gulp update-config tasks.
  • Updated Nx target configuration (apps/demos/project.json) and repo documentation to reflect the new build approach.

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated no comments.

Show a summary per file
File Description
pnpm-lock.yaml Removes the gulp entry from the demos importer.
apps/demos/scripts/update-config.js New Node script replacing gulp update-config (writes bundled-mode demo configs).
apps/demos/scripts/prepare-shared.js New Node script replacing gulp shared (copies shared resources).
apps/demos/scripts/prepare-js-configs.js New Node script replacing gulp js (init repo config, copy shared JS resources, write non-bundle configs).
apps/demos/scripts/build-bundles.js New Node script replacing gulp bundles (copy bundles + build framework bundles).
apps/demos/project.json Switches targets to nx:run-commands and updates inputs to reflect new scripts/utilities.
apps/demos/package.json Removes gulp dependency; rewires scripts to Node-based replacements.
apps/demos/gulpfile.js/shared.js Deletes Gulp shared task implementation.
apps/demos/gulpfile.js/js.js Deletes Gulp js/bundles task implementation.
apps/demos/gulpfile.js/index.js Deletes Gulp task exports.
apps/demos/.gitignore Removes ignore entry related to gulpfile eslint config.
.github/copilot-instructions.md Updates build-system description to remove Gulp references.
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (2)

apps/demos/project.json:74

  • prepare-bundles now runs node scripts/update-config.js, which rewrites demo Demos/**/config.js files (via utils/internal/create-config.js). However, the target outputs only lists {projectRoot}/bundles, so Nx caching/restores won’t account for the updated config files. Add {projectRoot}/Demos/**/config.js (and any other generated config outputs, if applicable) to this target’s outputs to keep cache correctness.
    "prepare-bundles": {
      "executor": "nx:run-commands",
      "options": {
        "commands": [
          "pnpm run generate-devextreme-angular-umd",
          "node scripts/build-bundles.js",
          "node scripts/update-config.js"
        ],
        "parallel": false,
        "cwd": "{projectRoot}"
      },
      "dependsOn": [
        // "^build" uncomment me after migrating to PNPM
      ],
      "inputs": [
        "default",
        "{projectRoot}/scripts/**/*",
        "{projectRoot}/utils/bundle/**/*",
        "{projectRoot}/utils/internal/create-config.js",
        "{projectRoot}/rollup.devextreme-angular.umd.config.mjs"
      ],
      "outputs": [
        "{projectRoot}/bundles"
      ]

apps/demos/project.json:133

  • prepare-js runs generate-ng-umd, generate-external-bundles, and node utils/create-tgz-packages.js, but the target inputs don’t include the corresponding Rollup config files (rollup.ng.umd.config.mjs, rollup.external.bundles.config.mjs) or utils/create-tgz-packages.js. This can make Nx cache the target with stale results when those files change. Consider adding these files to inputs (or broadening to {projectRoot}/utils/**/* / {projectRoot}/rollup*.config.mjs if that’s acceptable for caching).
    "prepare-js": {
      "executor": "nx:run-commands",
      "options": {
        "commands": [
          "pnpm nx build devextreme",
          "pnpm nx run-many --targets=pack --projects=devextreme-angular,devextreme-react,devextreme-vue --parallel",
          "node scripts/prepare-js-configs.js",
          "pnpm run generate-ng-umd",
          "pnpm run generate-devextreme-angular-umd",
          "pnpm run generate-external-bundles",
          "node utils/create-tgz-packages.js"
        ],
        "parallel": false,
        "cwd": "{projectRoot}"
      },
      "inputs": [
        "default",
        "{projectRoot}/scripts/**/*",
        "{projectRoot}/utils/shared/config-helper.js",
        "{projectRoot}/utils/internal/create-config.js",
        "{projectRoot}/utils/copy-shared-resources/**/*",
        "{projectRoot}/rollup.devextreme-angular.umd.config.mjs"
      ],
      "outputs": [
        "{projectRoot}/Demos/**/config.js"
      ]

Copilot AI review requested due to automatic review settings May 20, 2026 09:03

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 12 changed files in this pull request and generated 4 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread apps/demos/package.json Outdated
Comment thread apps/demos/scripts/build-bundles.js Outdated
Comment thread apps/demos/scripts/build-bundles.js
Comment thread .github/copilot-instructions.md
Copilot AI review requested due to automatic review settings May 20, 2026 10:01

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 12 changed files in this pull request and generated 3 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (1)

apps/demos/project.json:133

  • node scripts/prepare-js-configs.js calls config-helper.init() (which may create repository.config.json) and create-config.run() (which also writes Demos/**/tsconfig.json). The target outputs currently only list Demos/**/config.js, so Nx cache hits won’t restore the other generated, gitignored files. Consider adding {projectRoot}/Demos/**/tsconfig.json (and {projectRoot}/repository.config.json if it’s expected to exist after this target) to outputs.
      "outputs": [
        "{projectRoot}/Demos/**/config.js"
      ]

Comment thread apps/demos/project.json
Comment thread apps/demos/project.json
Comment thread apps/demos/project.json Outdated
Copilot AI review requested due to automatic review settings May 21, 2026 07:15

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 12 changed files in this pull request and generated 1 comment.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (1)

apps/demos/project.json:138

  • scripts/prepare-js-configs.js can generate {projectRoot}/repository.config.json (via utils/shared/config-helper.init()) and Demos/**/tsconfig.json files (via copyTsConfigForApproaches() in utils/internal/create-config.js). The prepare-js target caches only Demos/**/config.js right now, so cached runs may not restore those generated files. Add "{projectRoot}/repository.config.json" and "{projectRoot}/Demos/**/tsconfig.json" to this target’s outputs.
      "outputs": [
        "{projectRoot}/Demos/**/config.js"
      ]

Comment thread apps/demos/project.json Outdated
Copilot AI review requested due to automatic review settings May 21, 2026 10:20

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 12 changed files in this pull request and generated 5 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread apps/demos/scripts/build-bundles.js Outdated
Comment thread apps/demos/package.json Outdated
Comment thread .github/copilot-instructions.md
Comment thread .github/copilot-instructions.md
Comment thread apps/demos/project.json
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Arman Jivanyan <arman.jivanyan@devexpress.com>
Copilot AI review requested due to automatic review settings May 22, 2026 08:50
Copilot AI review requested due to automatic review settings June 19, 2026 07:54

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 13 changed files in this pull request and generated 1 comment.

Files not reviewed (1)
  • pnpm-lock.yaml: Generated file

Comment thread apps/demos/scripts/build-bundles.js Outdated

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 41 out of 43 changed files in this pull request and generated 1 comment.

Files not reviewed (1)
  • pnpm-lock.yaml: Generated file

Comment thread apps/demos/package.json
Copilot AI review requested due to automatic review settings June 24, 2026 09:41
@ajivanyandev ajivanyandev force-pushed the gulp/remove-gulp-from-app-demos branch from 0a8fbf0 to 98590d2 Compare June 24, 2026 09:41

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 13 changed files in this pull request and generated 1 comment.

Files not reviewed (1)
  • pnpm-lock.yaml: Generated file
Comments suppressed due to low confidence (1)

apps/demos/project.json:139

  • node scripts/prepare-js-configs.js runs createConfig.run(...), which also copies Demos/**/tsconfig.json (see utils/internal/create-config.js:120-127). The prepare-js target outputs currently only list config.js, so Nx may not cache/restore the generated tsconfig.json files correctly.
      "outputs": [
        "{projectRoot}/Demos/**/config.js"
      ]

Comment thread apps/demos/project.json
@ajivanyandev ajivanyandev marked this pull request as draft June 24, 2026 10:09
@ajivanyandev ajivanyandev marked this pull request as ready for review June 24, 2026 10:09
Copilot AI review requested due to automatic review settings June 24, 2026 10:09

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 41 out of 43 changed files in this pull request and generated no new comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Generated file

@ajivanyandev

Copy link
Copy Markdown
Contributor Author

@copilot resolve the merge conflicts in this pull request

…-app-demos

# Conflicts:
#	apps/demos/package.json
#	pnpm-lock.yaml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants